package cn.qingyun.gis.modules.express.entity;

import cn.qingyun.gis.modules.express.util.anno.CSVField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 快递业务规划数据
 * </p>
 *
 * @author miyunguo
 * @since 2023-08-28
 */
@Data
@TableName("express_region")
@ApiModel(value="ExpressRegion对象", description="快递业务规划数据")
public class ExpressRegion implements Serializable {

    /*@ApiModelProperty(value = "主键id")
    @TableId(value = "id",type = IdType.ASSIGN_UUID)
    private String id;

    @ApiModelProperty(value = "边界绘制数据")
    private String geometry;

    @ApiModelProperty(value = "中心点")
    private String centerPoint;

    @ApiModelProperty(value = "层级")
    private String level;

    @ApiModelProperty(value = "网格名称")
    private String name;

    @ApiModelProperty(value = "当前节点网格编码")
    private String code;

    @ApiModelProperty(value = "上一级网格编码")
    private String parentCode;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "修改时间")
    private Date updateTime;*/

    /**
     * 主键id
     */
    @ApiModelProperty(value = "主键id")
    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;

    /**
     * 边界绘制数据
     */
    @ApiModelProperty(value = "边界绘制数据")
    @Excel(name = "边界绘制数据", width = 15)
    @CSVField("WKT")
    private String geometry;

    /**
     * 中心点
     */
    @ApiModelProperty(value = "中心点")
    @Excel(name = "中心点", width = 15)
    private String centerPoint;

    /**
     * 层级
     */
    @ApiModelProperty(value = "层级")
    @Excel(name = "层级", width = 15)
    @CSVField("层级")
    private String level;

    /**
     * 网格名称
     */
    @ApiModelProperty(value = "网格名称")
    @Excel(name = "网格名称", width = 15)
    @CSVField("名称")
    private String name;

    /**
     * 当前节点网格编码
     */
    @ApiModelProperty(value = "当前节点网格编码")
    @Excel(name = "当前节点网格编码", width = 15)
    @CSVField("编码")
    private String code;

    /**
     * 上一级网格编码
     */
    @ApiModelProperty(value = "上一级网格编码")
    @Excel(name = "上一级网格编码", width = 15)
    @CSVField("父节点编码")
    private String parentCode;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @Excel(name = "创建时间", width = 15)
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    @Excel(name = "修改时间", width = 15)
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

}
